
// 这个验证件，仅仅验证输入的ID格式是否正确，许多controller里面已经自己定义了id验证。
// 
/**
 *  现在使用的在每个控制器中的验证器（后续看看能不能改进以下集中使用）
 *  const {id} = req.params;
 *  if (!id || !mongoose.Types.ObjectId.isValid(id)) {
 *      res.status(400);
 *      throw new Error('无效的类型ID');
 *  }
 *
 * 本验证件使用方法
 * const { validateObjectId } = require('../validators/objectIdValidator');
 * router.use('/:id', validateObjectId);
 */
const validateObjectId = (req, res, next) => {
  const id = req.params.id;
  if (!/^[0-9a-fA-F]{24}$/.test(id)) {
    return res.status(404).json({ 
      success: false,
      message: '无效的ID格式' 
    });
  }
  next();
};

module.exports = { validateObjectId };